// ProductService.java
package cn.tedu.apps_system.service;

import cn.tedu.apps_system.pojo.dto.ProductAddDTO;
import cn.tedu.apps_system.pojo.dto.ProductUpdateDTO;
import cn.tedu.apps_system.pojo.vo.ProductVO;

import java.util.List;

public interface ProductService {
    void add(ProductAddDTO productAddDTO);

    void update(ProductUpdateDTO productUpdateDTO);

    void delete(Long id);

    void putOnShelf(Long id);

    void takeOffShelf(Long id);

    ProductVO getById(Long id);

    List<ProductVO> listByMerchantId(Long merchantId);

    List<ProductVO> listByMerchantIdAndStatus(Long merchantId, Integer status);


    /**
     * 审核商品
     * @param id 商品ID
     */
    void reviewProduct(Long id);

    /**
     * 查询所有待审核的商品列表
     * @return 商品VO列表
     */
    List<ProductVO> listUnreviewedProducts();

}